package com.mjf.spark.day02

import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}

/**
 * 通过读取内存集合中的数据，创建RDD
 *    -getPartitions方法
 *        获取分区信息
 *    -compute方法
 *        计算每个分区的内容
 */
object Spark01_CreateRDD_mem {
  def main(args: Array[String]): Unit = {

    // 创建SparkConf配置文件
    val conf = new SparkConf().setMaster("local[*]").setAppName("")
    // 创建SparkContext对象
    val sc = new SparkContext(conf)

    // 创建集合对象
    val list: List[Int] = List(1, 2, 3, 4)

    // 根据集合创建RDD  方式一
    val rdd1: RDD[Int] = sc.parallelize(list)

    // 根据集合创建RDD  方式二   底层调用的parallelize
    val rdd2: RDD[Int] = sc.makeRDD(list)

    rdd1.collect().foreach(println)
    rdd2.collect().foreach(println)

    // 关闭连接
    sc. stop()

  }
}
